package com.zw.pdm.module.est.mapper;
import com.zw.pdm.entity.designtask.DsnProStruct;
import com.zw.pdm.module.est.model.InputCostsModel;
import com.zw.pdm.module.est.model.SolderingCheckModel;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.Date;
import java.util.List;

@Repository
public interface SolderingMapper {
    List<InputCostsModel> selectcuttingTime(InputCostsModel model);
    List<InputCostsModel>selectcuttingMaterial(InputCostsModel model);
    int insertManpower(InputCostsModel model);
    int insertMaterial(InputCostsModel model);
    int updateManpower(InputCostsModel model);
    int updateMaterial(InputCostsModel model);
    InputCostsModel selectOneManpowerTime(Integer id);
    InputCostsModel selectOneMaterial(Integer mid);
    int deleteManHour(Integer manId);
    int deleteMaterial(Integer mid);

    List<InputCostsModel> selectCost(Integer manId);

    List<InputCostsModel> selectMaterial(Integer mid);
    /**
     * 工时数据删除逻辑验证辅助查询1
     * @param inputCostsModel
     * @return
     */
    List<InputCostsModel> selectManHourAll1(InputCostsModel inputCostsModel);
    /**
     * 工时数据删除逻辑验证辅助查询2
     * @param inputCostsModel
     * @return
     */
    List<InputCostsModel> selectManHourAll2(InputCostsModel inputCostsModel);
    /**
     * 按条件清空工时数据
     * @param inputCostsModel
     * @return
     */
    int deleteManHourAll(InputCostsModel inputCostsModel);
    /**
     * 辅材数据删除逻辑验证辅助查询1
     * @param inputCostsModel
     * @return
     */
    List<InputCostsModel> selectMatAll1(InputCostsModel inputCostsModel);
    /**
     * 辅材数据删除逻辑验证辅助查询2
     * @param inputCostsModel
     * @return
     */
    List<InputCostsModel> selectMatAll2(InputCostsModel inputCostsModel);
    /**
     * 按条件清空辅材数据
     * @param inputCostsModel
     * @return
     */
    int deleteMatAll(InputCostsModel inputCostsModel);

    List<InputCostsModel> selectVerifyMan(InputCostsModel manpower);

    List<InputCostsModel> selectVerifyMat(InputCostsModel manpower);

    int updatetManVerify(InputCostsModel inputCostsModel);
    int updatetMatVerify(InputCostsModel inputCostsModel);
    /** 根据项目号查询部分 */
    List<DsnProStruct> findPartByProjectCode(@Param("code") String code, @Param("type") String type);

    List<SolderingCheckModel> selectSolderingCheck(SolderingCheckModel solderingCheckModel);


    SolderingCheckModel selectProject(@Param("fkCode") String fkCode,@Param("partName") String partName,@Param("specialId") Integer specialId);

    List<InputCostsModel> selectMapower(InputCostsModel inputCostsModel);

    List<InputCostsModel> selectMaterialVerify(InputCostsModel inputCostsModel);
}